#ifndef SEMAPHORE_H
#define SEMAPHORE_H
#include <QGraphicsItem>
#include "traffic_sim.h"
#include <QObject>

class Agent;
class Node;
class Edge;
class GraphWidget;
using namespace Traffic_Sim;

class Semaphore : public QObject,  public QGraphicsItem
{
  Q_OBJECT
    
    public:
  Semaphore (Node *Node);
  ~Semaphore();
  void setSemaphore(Traffic_Semaphore * sem);
 protected:
    QRectF boundingRect() const;
    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
 public:
    Node *node;
    Traffic_Semaphore * semaphore;
};

#endif
